package cn.kgc.itrip.common;

import org.springframework.data.redis.core.StringRedisTemplate;

import java.util.concurrent.TimeUnit;


public class RedisUtils {
    private StringRedisTemplate stringRedisTemplate;

    public StringRedisTemplate getStringRedisTemplate() {
        return stringRedisTemplate;
    }

    public void setStringRedisTemplate(StringRedisTemplate stringRedisTemplate) {
        this.stringRedisTemplate = stringRedisTemplate;
    }

    /**
     *  向redis中持久存入数据
     * @param key
     * @param value
     */
    public void setValue(String key,String value){
        stringRedisTemplate.opsForValue().set(key,value);
    }

    /**
     *  获取数据
     * @param key
     * @return
     */
    public String getValue(String key){
        return stringRedisTemplate.opsForValue().get(key);
    }

    /**
     * 删除数据
     * @param key
     */
    public void del(String key){
        stringRedisTemplate.delete(key);
    }

    /**
     * 给存储的数据设置有效时间
     * @param key
     * @param value
     * @param time
     */
    public void setExpire(String key,String value ,long time){
        stringRedisTemplate.opsForValue().set(key,value,time,TimeUnit.SECONDS);
    }

    /**
     * 判断key是否存在
     * @param key
     * @return
     */
    public boolean isExists(String key){
        return stringRedisTemplate.hasKey(key);
    }

}
